home *** CD-ROM | disk | FTP | other *** search
Wrap
10 '******************************************************************** 20 '** 冗談ビデオソフト 「MultiClock」 V1.3 メインルーチン ** 30 '** ===以下のソフトを使用・又は参考にさせていただきました=== ** 40 '** #『F-BASIC386 機能拡張REX集』から ** 50 '** 「8×8ドットフォント取得REX」(作者・ToYoZo) ** 60 '** #NOI'z BASIC GUI SUPPORT LIBLALY III (作者・NOI'z) ** 70 '** #ソフトバンク社刊 "お気楽♪ BASIC"より ** 80 '** 「インテリア・デジタルアラームクロック」(作者・永倉一之) ** 90 '** By ちくちくうにうに ** 100 '******************************************************************** 110 '======起動時のみの初期化====== 120 CLEAR ,,,,1024,300*1024 130 SCREEN 0:SCREEN@ 0:CLS:WINDOW(0,0)-(1023,511):VIEW(0,0)-(1023,511) 140 PROG_FLAG=1:FONT_FLAG=1 150 AND0$=CHR$(&H7F,&HFF,&H3F,&HFF,&H1F,&HFF,&H0F,&HFF,&H07,&HFF,&H03,&HFF,&H01,&HFF,&H00,&HFF,&H00,&H7F,&H00,&H3F,&H00,&H1F,&H00,&HFF,&H00,&HFF,&H18,&H7F,&H38,&H7F,&HFC,&H7F) 'マウスカーソール用パターン1 160 DOT0$=CHR$(&H00,&H00,&H00,&H00,&H40,&H00,&H20,&H00,&H50,&H00,&H38,&H00,&H5C,&H00,&H2E,&H00,&H5F,&H00,&H2F,&H80,&H5E,&H00,&H26,&H00,&H42,&H00,&H03,&H00,&H01,&H00,&H00,&H00) 'マウスカーソール用パターン2 170 DIM PAL%(2,15),SANKAKU(500),EXIT(500) 180 DIM FMTOWNS(500),BS$(200),HX(200),HY(200),HDX(200),HDY(200),COL(200),MOJI$(200),PUSHB(200) 190 GOSUB *PAL_LOAD 200 GOSUB *EXIT:CLS:GOSUB *FMTOWNS:CLS:GOSUB *SANKAKU:CLS 210 LOADM"fnt_ar.rex",0 'ToYoZo氏の8DOTFONT-LOADER 220 '============================== 230 *FORMAT 'GUIシステムのみの初期化 240 SCREEN 0:SCREEN@ 0:CLS:WINDOW(0,0)-(1023,511):VIEW(0,0)-(1023,511) 250 XBAI=2:YBAI=2:GOSUB *ZOOM 260 PALETTE 7,[30,30,30]:GOSUB *FED_IN 270 DEF FONT"システム 12ドット":MOUSE 0:MOUSE 1,160,120,1:MOUSE 2,AND0$,DOT0$:MOUSE 4,0,0,319,239 280 GOTO *YOURPROGRAM 290 '-----------------------------------------------SUBルーチン群 300 *FED_IN 'フェードインを行う 16/256COLORのみ使用可 310 FOR I=0 TO 15 320 FOR COL=0 TO 15 330 PALETTE COL,[PAL%(0,COL)*I,PAL%(1,COL)*I,PAL%(2,COL)*I] 340 NEXT 350 NEXT:RETURN 360 ' 370 *FED_OUT 'フェードアウトを行う 16/256のみ 380 FOR I=15 TO 0 STEP -1 390 FOR COL=0 TO 15 400 PALETTE COL,[PAL%(0,COL)*I,PAL%(1,COL)*I,PAL%(2,COL)*I] 410 NEXT 420 NEXT:RETURN 430 ' 440 *CONNECT 'ボタン その1 450 CONNECT (X1,Y2)-(X1,Y1)-(X2,Y1),7,PSET 460 CONNECT (X2,Y1+1)-(X2,Y2)-(X1+1,Y2),%8,PSET 470 RETURN 480 ' 490 *CONNECT2 'ボタン その2 500 CONNECT (X1,Y2)-(X1,Y1)-(X2,Y1),7,PSET 510 CONNECT (X1+1,Y2-1)-(X1+1,Y1+1)-(X2-1,Y1+1),7,PSET 520 CONNECT (X2,Y1+1)-(X2,Y2)-(X1+1,Y2),%8,PSET 530 CONNECT (X2-1,Y1+2)-(X2-1,Y2-1)-(X1+2,Y2-1),%8,PSET 540 RETURN 550 ' 560 *CONNECTR '押されたボタン 1 570 CONNECT (X1,Y2)-(X1,Y1)-(X2,Y1),%8,PSET 580 CONNECT (X2,Y1+1)-(X2,Y2)-(X1+1,Y2),7,PSET 590 RETURN 600 ' 610 *CONNECT2R '押されたボタン 2 620 CONNECT (X1,Y2)-(X1,Y1)-(X2,Y1),%8,PSET 630 CONNECT (X1+1,Y2-1)-(X1+1,Y1+1)-(X2-1,Y1+1),%8,PSET 640 CONNECT (X2,Y1+1)-(X2,Y2)-(X1+1,Y2),7,PSET 650 CONNECT (X2-1,Y1+2)-(X2-1,Y2-1)-(X1+2,Y2-1),7,PSET 660 RETURN 670 ' 680 *SANKAKU '▼フォント作成 690 RESTORE 700 700 DATA -1,0,0,0,0 710 DATA -1,-1,0,0,0 720 DATA -1,-1,-1,0,0 730 DATA -1,-1,-1,-1,0 740 DATA -1,-1,-1,-1,-1 750 DATA -1,-1,-1,-1,0 760 DATA -1,-1,-1,0,0 770 DATA -1,-1,0,0,0 780 DATA -1,0,0,0,0 790 DATA 0,0,0,0,0 800 FOR I=0 TO 9:FOR A=0 TO 4:READ DOT 810 IF DOT=-1 THEN PSET(I,480+A),7 820 NEXT:NEXT 830 GET@A(0,480)-(9,484),SANKAKU 840 RETURN 850 ' 860 *EXIT'出口のフォント 870 RESTORE 910 880 FOR Y=0 TO 12:FOR X=0 TO 10:READ E 890 IF E=1 THEN PSET(640+X,Y),7 900 NEXT:NEXT 910 DATA 0,0,0,0,1,1,1,0,0,0,0 920 DATA 0,0,0,0,1,1,1,0,0,0,0 930 DATA 0,0,0,0,1,1,1,0,0,0,0 940 DATA 0,0,0,0,1,1,1,0,0,0,0 950 DATA 0,0,0,0,0,0,0,0,0,0,0 960 DATA 0,0,0,0,1,1,1,0,0,0,0 970 DATA 0,0,0,0,1,1,1,0,0,0,0 980 DATA 0,0,0,1,1,1,1,1,0,0,0 990 DATA 0,0,0,1,1,1,1,1,0,0,0 1000 DATA 0,0,1,1,1,1,1,1,1,0,0 1010 DATA 0,0,1,1,1,1,1,1,1,0,0 1020 DATA 0,1,1,1,1,1,1,1,1,1,0 1030 DATA 1,1,1,1,1,1,1,1,1,1,1 1040 GET@A(640,0)-(650,12),EXIT 1050 ' 1060 *FMTOWNS'FMTOWNSのロゴ 1070 RESTORE 1080 1080 DATA 0,0,0,0,0,0,-1,0,0,0,-1 1090 DATA 0,0,0,0,0,0,-1,-1,-1,-1,-1 1100 DATA 0,0,0,0,0,0,-1,0,-1,0,-1 1110 DATA 0,0,0,0,0,0,-1,0,-1,0,0 1120 DATA 0,0,0,0,0,0,-1,-1,0,0,0 1130 DATA 0,0,0,0,0,0,0,0,0,0,0 1140 DATA 0,0,0,0,0,0,-1,0,0,0,-1 1150 DATA 0,0,0,0,0,0,-1,-1,-1,-1,-1 1160 DATA 0,0,0,0,0,0,0,-1,-1,0,0 1170 DATA 0,0,0,0,0,0,0,0,0,-1,-1 1180 DATA 0,0,0,0,0,0,0,0,-1,-1,0 1190 DATA 0,0,0,0,0,0,-1,-1,0,0,-1 1200 DATA -1,-1,0,0,0,0,-1,-1,-1,-1,-1 1210 DATA -1,-1,0,0,0,0,-1,0,0,0,-1 1220 DATA -1,-1,0,0,0,0,0,0,0,0,0 1230 DATA -1,-1,0,0,0,0,0,0,0,0,0 1240 DATA -1,-1,-1,-1,-1,0,-1,-1,-1,-1,-1 1250 DATA -1,-1,-1,-1,-1,0,-1,-1,-1,-1,-1 1260 DATA -1,-1,0,0,0,0,0,0,0,0,0 1270 DATA -1,-1,0,0,0,0,0,0,0,0,0 1280 DATA -1,-1,0,0,0,0,0,0,0,0,0 1290 DATA -1,-1,0,0,-1,0,-1,0,0,0,0 1300 DATA 0,0,-1,-1,-1,0,-1,-1,-1,0,0 1310 DATA 0,-1,-1,-1,-1,0,-1,-1,-1,-1,0 1320 DATA 0,-1,-1,0,0,0,0,0,-1,-1,0 1330 DATA -1,-1,0,0,0,0,0,0,0,-1,-1 1340 DATA -1,-1,0,0,0,0,0,0,0,-1,-1 1350 DATA -1,-1,0,0,0,0,0,0,0,-1,-1 1360 DATA 0,-1,-1,0,0,0,0,0,-1,-1,0 1370 DATA 0,-1,-1,-1,-1,0,-1,-1,-1,-1,0 1380 DATA 0,0,-1,-1,-1,0,-1,-1,-1,0,0 1390 DATA 0,0,0,0,-1,0,-1,0,0,0,0 1400 DATA -1,-1,0,0,0,0,0,0,0,0,0 1410 DATA -1,-1,-1,-1,-1,0,0,0,0,0,0 1420 DATA 0,0,-1,-1,-1,0,-1,-1,0,0,0 1430 DATA 0,0,0,0,0,0,-1,-1,-1,-1,-1 1440 DATA 0,0,0,0,0,0,-1,-1,-1,-1,-1 1450 DATA 0,0,0,-1,-1,0,-1,-1,0,0,0 1460 DATA -1,-1,-1,-1,-1,0,0,0,0,0,0 1470 DATA -1,-1,-1,-1,-1,0,0,0,0,0,0 1480 DATA 0,0,0,-1,-1,0,-1,-1,0,0,0 1490 DATA 0,0,0,0,0,0,-1,-1,-1,-1,-1 1500 DATA 0,0,0,0,0,0,-1,-1,-1,-1,-1 1510 DATA 0,0,-1,-1,-1,0,-1,-1,0,0,0 1520 DATA -1,-1,-1,-1,-1,0,0,0,0,0,0 1530 DATA -1,-1,0,0,0,0,0,0,0,0,0 1540 DATA 0,0,0,0,0,0,0,0,0,0,0 1550 DATA -1,-1,-1,-1,-1,0,-1,-1,-1,-1,-1 1560 DATA -1,-1,-1,-1,-1,0,-1,-1,-1,-1,-1 1570 DATA -1,-1,0,0,0,0,0,0,0,0,0 1580 DATA -1,-1,0,0,0,0,0,0,0,0,0 1590 DATA -1,-1,-1,-1,0,0,0,0,0,0,0 1600 DATA 0,-1,-1,-1,-1,0,-1,0,0,0,0 1610 DATA 0,0,0,-1,-1,0,-1,-1,-1,0,0 1620 DATA 0,0,0,0,0,0,-1,-1,-1,-1,0 1630 DATA 0,0,0,0,0,0,0,0,-1,-1,-1 1640 DATA -1,-1,-1,-1,-1,0,-1,-1,-1,-1,-1 1650 DATA -1,-1,-1,-1,-1,0,-1,-1,-1,-1,-1 1660 DATA 0,0,0,0,0,0,0,0,0,0,0 1670 DATA 0,-1,-1,-1,0,0,0,0,0,-1,-1 1680 DATA -1,-1,-1,-1,-1,0,0,0,0,-1,-1 1690 DATA -1,-1,-1,-1,-1,0,0,0,0,-1,-1 1700 DATA -1,-1,0,-1,-1,0,0,0,0,-1,-1 1710 DATA -1,-1,0,-1,-1,0,0,0,0,-1,-1 1720 DATA -1,-1,0,-1,-1,0,0,0,0,-1,-1 1730 DATA -1,-1,0,-1,-1,0,0,0,0,-1,-1 1740 DATA -1,-1,0,-1,-1,0,-1,-1,-1,-1,-1 1750 DATA -1,-1,0,-1,-1,0,-1,-1,-1,-1,-1 1760 DATA 0,0,0,0,-1,0,-1,-1,-1,-1,0 1770 DATA 0,0,0,0,0,0,0,0,0,0,0 1780 CLS:FOR I=0 TO 69:FOR A=0 TO 10:READ DOT 1790 IF DOT=-1 THEN PSET(I,480+A),7 1800 NEXT:NEXT 1810 GET@A(0,480)-(69,490),FMTOWNS:RETURN 1820 ' 1830 *RK '画面をかく 1840 CLS 1850 FOR I=0 TO MAX-1 1860 IF BS$(I)="BOXFIL" AND COL(I)>=0 AND COL(I)<=7 THEN LINE(HX(I),HY(I))-(HDX(I),HDY(I)),PSET,COL(I),BF 1870 IF BS$(I)="BOXFIL" AND COL(I)>=8 AND COL(I)<=15 THEN C=COL(I)-8:LINE(HX(I),HY(I))-(HDX(I),HDY(I)),PSET,%C,BF 1880 IF BS$(I)="CONNECT" AND COL(I)>=0 AND COL(I)<=7 THEN LINE(HX(I),HY(I))-(HDX(I),HDY(I)),PSET,COL(I),BF:X1=HX(I):Y1=HY(I):X2=HDX(I):Y2=HDY(I):GOSUB *CONNECT 1890 IF BS$(I)="CONNECT" AND COL(I)>=8 AND COL(I)<=15 THEN C=COL(I)-8:LINE(HX(I),HY(I))-(HDX(I),HDY(I)),PSET,%C,BF:X1=HX(I):Y1=HY(I):X2=HDX(I):Y2=HDY(I):GOSUB *CONNECT 1900 IF BS$(I)="CONNECT2" AND COL(I)>=0 AND COL(I)<=7 THEN LINE(HX(I),HY(I))-(HDX(I),HDY(I)),PSET,COL(I),BF:X1=HX(I):Y1=HY(I):X2=HDX(I):Y2=HDY(I):GOSUB *CONNECT2 1910 IF BS$(I)="CONNECT2" AND COL(I)>=8 AND COL(I)<=15 THEN C=COL(I)-8:LINE(HX(I),HY(I))-(HDX(I),HDY(I)),PSET,%C,BF:X1=HX(I):Y1=HY(I):X2=HDX(I):Y2=HDY(I):GOSUB *CONNECT2 1920 IF BS$(I)="CONNECTR" AND COL(I)>=0 AND COL(I)<=7 THEN LINE(HX(I),HY(I))-(HDX(I),HDY(I)),PSET,COL(I),BF:X1=HX(I):Y1=HY(I):X2=HDX(I):Y2=HDY(I):GOSUB *CONNECTR 1930 IF BS$(I)="CONNECTR" AND COL(I)>=8 AND COL(I)<=15 THEN C=COL(I)-8:LINE(HX(I),HY(I))-(HDX(I),HDY(I)),PSET,%C,BF:X1=HX(I):Y1=HY(I):X2=HDX(I):Y2=HDY(I):GOSUB *CONNECTR 1940 IF BS$(I)="CONNECT2R" AND COL(I)>=0 AND COL(I)<=7 THEN LINE(HX(I),HY(I))-(HDX(I),HDY(I)),PSET,COL(I),BF:X1=HX(I):Y1=HY(I):X2=HDX(I):Y2=HDY(I):GOSUB *CONNECT2R 1950 IF BS$(I)="CONNECT2R" AND COL(I)>=8 AND COL(I)<=15 THEN C=COL(I)-8:LINE(HX(I),HY(I))-(HDX(I),HDY(I)),PSET,%C,BF:X1=HX(I):Y1=HY(I):X2=HDX(I):Y2=HDY(I):GOSUB *CONNECT2R 1960 IF BS$(I)="FMTOWNS" THEN PUT@A(HX(I),HY(I))-(HDX(I),HDY(I)),FMTOWNS,MATTE,,,0 1970 IF BS$(I)="MCONNECT" AND COL(I)>=0 AND COL(I)<=7 THEN LINE(HX(I),HY(I))-(HDX(I),HDY(I)),PSET,COL(I),BF:X1=HX(I):Y1=HY(I):X2=HDX(I):Y2=HDY(I):GOSUB *CONNECT 1980 IF BS$(I)="MCONNECT" AND COL(I)>=8 AND COL(I)<=15 THEN C=COL(I)-8:LINE(HX(I),HY(I))-(HDX(I),HDY(I)),PSET,%C,BF:X1=HX(I):Y1=HY(I):X2=HDX(I):Y2=HDY(I):GOSUB *CONNECT 1990 IF BS$(I)="MCONNECT2" AND COL(I)>=0 AND COL(I)<=7 THEN LINE(HX(I),HY(I))-(HDX(I),HDY(I)),PSET,COL(I),BF:X1=HX(I):Y1=HY(I):X2=HDX(I):Y2=HDY(I):GOSUB *CONNECT2 2000 IF BS$(I)="MCONNECT2" AND COL(I)>=8 AND COL(I)<=15 THEN C=COL(I)-8:LINE(HX(I),HY(I))-(HDX(I),HDY(I)),PSET,%C,BF:X1=HX(I):Y1=HY(I):X2=HDX(I):Y2=HDY(I):GOSUB *CONNECT2 2010 IF BS$(I)="MCONNECTR" AND COL(I)>=0 AND COL(I)<=7 THEN LINE(HX(I),HY(I))-(HDX(I),HDY(I)),PSET,COL(I),BF:X1=HX(I):Y1=HY(I):X2=HDX(I):Y2=HDY(I):GOSUB *CONNECTR 2020 IF BS$(I)="MCONNECTR" AND COL(I)>=8 AND COL(I)<=15 THEN C=COL(I)-8:LINE(HX(I),HY(I))-(HDX(I),HDY(I)),PSET,%C,BF:X1=HX(I):Y1=HY(I):X2=HDX(I):Y2=HDY(I):GOSUB *CONNECTR 2030 IF BS$(I)="MCONNECT2R" AND COL(I)>=0 AND COL(I)<=7 THEN LINE(HX(I),HY(I))-(HDX(I),HDY(I)),PSET,COL(I),BF:X1=HX(I):Y1=HY(I):X2=HDX(I):Y2=HDY(I):GOSUB *CONNECT2R 2040 IF BS$(I)="MCONNECT2R" AND COL(I)>=8 AND COL(I)<=15 THEN C=COL(I)-8:LINE(HX(I),HY(I))-(HDX(I),HDY(I)),PSET,%C,BF:X1=HX(I):Y1=HY(I):X2=HDX(I):Y2=HDY(I):GOSUB *CONNECT2R 2050 IF BS$(I)="MOJI" AND COL(I)>=0 AND COL(I)<=7 THEN SYMBOL(HX(I),HY(I)),MOJI$(I),.75!,.75!,COL(I) 2060 IF BS$(I)="MOJI" AND COL(I)>=8 AND COL(I)<=15 THEN C=COL(I)-8:SYMBOL(HX(I),HY(I)),MOJI$(I),.75!,.75!,%C 2070 IF BS$(I)="EXIT" THEN PUT@A(HX(I),HY(I))-(HDX(I),HDY(I)),EXIT,MATTE,,,0 2080 IF BS$(I)="SANKAKU" THEN PUT@A(HX(I),HY(I))-(HDX(I),HDY(I)),SANKAKU,MATTE,,,0 2090 NEXT 2100 RETURN 2110 ' 2120 *ボタン処理 2130 IF PUSHB(HMX)=2 THEN *BOTTONXOR 2140 IF PUSHB(HMX)=1 THEN *BOTTONH 2150 IF COL(HMX)<=7 AND COL(HMX)>=0 AND BS$(HMX)="CONNECT" THEN LINE(HX(HMX),HY(HMX))-(HDX(HMX),HDY(HMX)),PSET,COL(HMX),B 2160 IF COL(HMX)<=15 AND COL(HMX)>=8 AND BS$(HMX)="CONNECT" THEN C=COL(HMX)-8:LINE(HX(HMX),HY(HMX))-(HDX(HMX),HDY(HMX)),PSET,%C,B 2170 IF COL(HMX)<=7 AND COL(HMX)>=0 AND BS$(HMX)="CONNECT2" THEN 2180 FOR I=0 TO 1:LINE(HX(HMX)+I,HY(HMX)+I)-(HDX(HMX)-I,HDY(HMX)-I),PSET,COL(HMX),B:NEXT 2190 ENDIF 2200 IF COL(HMX)<=15 AND COL(HMX)>=8 AND BS$(HMX)="CONNECT2" THEN 2210 C=COL(HMX)-8:FOR I=0 TO 1:LINE(HX(HMX)+I,HY(HMX)+I)-(HDX(HMX)-I,HDY(HMX)-I),PSET,%C,B:NEXT 2220 ENDIF 2230 IF COL(HMX)<=7 AND COL(HMX)>=0 AND BS$(HMX)="CONNECTR" THEN LINE(HX(HMX),HY(HMX))-(HDX(HMX),HDY(HMX)),PSET,COL(HMX),BF 2240 IF COL(HMX)<=15 AND COL(HMX)>=8 AND BS$(HMX)="CONNECTR" THEN C=COL(HMX)-8:LINE(HX(HMX),HY(HMX))-(HDX(HMX),HDY(HMX)),PSET,%C,B 2250 IF COL(HMX)<=7 AND COL(HMX)>=0 AND BS$(HMX)="CONNECT2R" THEN 2260 FOR I=0 TO 1:LINE(HX(HMX)+I,HY(HMX)+I)-(HDX(HMX)-I,HDY(HMX)-I),PSET,COL(HMX),B:NEXT 2270 ENDIF 2280 IF COL(HMX)<=15 AND COL(HMX)>=8 AND BS$(HMX)="CONNECT2R" THEN 2290 C=COL(HMX)-8:FOR I=0 TO 1:LINE(HX(HMX)+I,HY(HMX)+I)-(HDX(HMX)-I,HDY(HMX)-I),PSET,%C,B:NEXT 2300 ENDIF 2310 WHILE MOUSE(2,0)=-1:MX=MOUSE(0):MY=MOUSE(1) 2320 IF MX>=HX(HMX) AND MY>=HY(HMX) AND MX<=HDX(HMX) AND MY<=HDY(HMX) THEN 2330 ELSE 2340 IF BS$(HMX)="CONNECT" THEN X1=HX(HMX):Y1=HY(HMX):X2=HDX(HMX):Y2=HDY(HMX):GOSUB *CONNECT 2350 IF BS$(HMX)="CONNECT2" THEN X1=HX(HMX):Y1=HY(HMX):X2=HDX(HMX):Y2=HDY(HMX):GOSUB *CONNECT2 2360 IF BS$(HMX)="CONNECTR" THEN X1=HX(HMX):Y1=HY(HMX):X2=HDX(HMX):Y2=HDY(HMX):GOSUB *CONNECTR 2370 IF BS$(HMX)="CONNECT2R" THEN X1=HX(HMX):Y1=HY(HMX):X2=HDX(HMX):Y2=HDY(HMX):GOSUB *CONNECT2R 2380 RETURN:ENDIF 2390 WEND 2400 IF BS$(HMX)="CONNECT" THEN X1=HX(HMX):Y1=HY(HMX):X2=HDX(HMX):Y2=HDY(HMX):GOSUB *CONNECT 2410 IF BS$(HMX)="CONNECT2" THEN X1=HX(HMX):Y1=HY(HMX):X2=HDX(HMX):Y2=HDY(HMX):GOSUB *CONNECT2 2420 IF BS$(HMX)="CONNECTR" THEN X1=HX(HMX):Y1=HY(HMX):X2=HDX(HMX):Y2=HDY(HMX):GOSUB *CONNECTR 2430 IF BS$(HMX)="CONNECT2R" THEN X1=HX(HMX):Y1=HY(HMX):X2=HDX(HMX):Y2=HDY(HMX):GOSUB *CONNECT2R 2440 SWITCH=1:RETURN 2450 ' 2460 *BOTTONXOR 2470 LINE(HX(HMX),HY(HMX))-(HDX(HMX),HDY(HMX)),XOR,,BF 2480 WHILE MOUSE(2,0)=-1:MX=MOUSE(0):MY=MOUSE(1) 2490 IF MX>=HX(HMX) AND MY>=HY(HMX) AND MX<=HDX(HMX) AND MY<=HDY(HMX) ELSE LINE(HX(HMX),HY(HMX))-(HDX(HMX),HDY(HMX)),XOR,,BF:RETURN 2500 WEND 2510 LINE(HX(HMX),HY(HMX))-(HDX(HMX),HDY(HMX)),XOR,,BF:SWITCH=1:RETURN 2520 ' 2530 *BOTTONH 2540 IF BS$(HMX)="CONNECT" THEN X1=HX(HMX):Y1=HY(HMX):X2=HDX(HMX):Y2=HDY(HMX):GOSUB *CONNECTR 2550 IF BS$(HMX)="CONNECT2" THEN X1=HX(HMX):Y1=HY(HMX):X2=HDX(HMX):Y2=HDY(HMX):GOSUB *CONNECT2R 2560 IF BS$(HMX)="CONNECTR" THEN X1=HX(HMX):Y1=HY(HMX):X2=HDX(HMX):Y2=HDY(HMX):GOSUB *CONNECT 2570 IF BS$(HMX)="CONNECT2R" THEN X1=HX(HMX):Y1=HY(HMX):X2=HDX(HMX):Y2=HDY(HMX):GOSUB *CONNECT2 2580 WHILE MOUSE(2,0)=-1:MX=MOUSE(0):MY=MOUSE(1) 2590 IF MX>=HX(HMX) AND MY>=HY(HMX) AND MX<=HDX(HMX) AND MY<=HDY(HMX) THEN 2600 ELSE 2610 IF BS$(HMX)="CONNECT" THEN X1=HX(HMX):Y1=HY(HMX):X2=HDX(HMX):Y2=HDY(HMX):GOSUB *CONNECT 2620 IF BS$(HMX)="CONNECT2" THEN X1=HX(HMX):Y1=HY(HMX):X2=HDX(HMX):Y2=HDY(HMX):GOSUB *CONNECT2 2630 IF BS$(HMX)="CONNECTR" THEN X1=HX(HMX):Y1=HY(HMX):X2=HDX(HMX):Y2=HDY(HMX):GOSUB *CONNECTR 2640 IF BS$(HMX)="CONNECT2R" THEN X1=HX(HMX):Y1=HY(HMX):X2=HDX(HMX):Y2=HDY(HMX):GOSUB *CONNECT2R 2650 RETURN:ENDIF 2660 WEND 2670 IF BS$(HMX)="CONNECT" THEN X1=HX(HMX):Y1=HY(HMX):X2=HDX(HMX):Y2=HDY(HMX):GOSUB *CONNECT 2680 IF BS$(HMX)="CONNECT2" THEN X1=HX(HMX):Y1=HY(HMX):X2=HDX(HMX):Y2=HDY(HMX):GOSUB *CONNECT2 2690 IF BS$(HMX)="CONNECTR" THEN X1=HX(HMX):Y1=HY(HMX):X2=HDX(HMX):Y2=HDY(HMX):GOSUB *CONNECTR 2700 IF BS$(HMX)="CONNECT2R" THEN X1=HX(HMX):Y1=HY(HMX):X2=HDX(HMX):Y2=HDY(HMX):GOSUB *CONNECT2R 2710 SWITCH=1:RETURN 2720 ' 2730 *PAL_LOAD 'パレットデータロード 2740 RESTORE 2750 2750 DATA 0 , 0 , 0 2760 DATA 12, 12, 12 2770 DATA 10, 10, 10 2780 DATA 8 , 8 , 8 2790 DATA 6 , 6 , 14 2800 DATA 2 , 5 , 15 2810 DATA 6 , 11, 15 2820 DATA 8 , 8 , 8 2830 DATA 4 , 4 , 4 2840 DATA 0 , 0 , 15 2850 DATA 0 , 15, 0 2860 DATA 0 , 15, 15 2870 DATA 15, 0 , 0 2880 DATA 15, 0 , 15 2890 DATA 15, 15, 0 2900 DATA 15, 15, 15 2910 FOR I=0 TO 15 2920 READ PAL%(0,I),PAL%(1,I),PAL%(2,I) 2930 NEXT:RETURN 2940 ' 5000 *YOURPROGRAM 'ここからユーザーPROGRAM 5010 '======GUIデータ(コントロールパネル) 5020 MAX= 35 5030 BS$(0)="BOXFIL":HX(0)=0:HY(0)=0:HDX(0)=319:HDY(0)=239:COL(0)=9:MOJI$(0)="":PUSHB(0)=0 5040 BS$(1)="MCONNECT":HX(1)=59:HY(1)=59:HDX(1)=248:HDY(1)=197:COL(1)=9:MOJI$(1)="":PUSHB(1)=0 5050 BS$(2)="CONNECT2":HX(2)=63:HY(2)=63:HDX(2)=77:HDY(2)=78:COL(2)=9:MOJI$(2)="":PUSHB(2)=0 5060 BS$(3)="MOJI":HX(3)=65:HY(3)=65:HDX(3)=77:HDY(3)=77:COL(3)=7:MOJI$(3)="×":PUSHB(3)=0 5070 BS$(4)="MOJI":HX(4)=65:HY(4)=66:HDX(4)=77:HDY(4)=78:COL(4)=7:MOJI$(4)="×":PUSHB(4)=0 5080 BS$(5)="MCONNECTR":HX(5)=81:HY(5)=63:HDX(5)=242:HDY(5)=78:COL(5)=9:MOJI$(5)="":PUSHB(5)=0 5090 BS$(6)="MOJI":HX(6)=84:HY(6)=65:HDX(6)=192:HDY(6)=77:COL(6)=0:MOJI$(6)=" <MultiClock V1.3>":PUSHB(6)=0 5100 BS$(7)="MOJI":HX(7)=64:HY(7)=82:HDX(7)=100:HDY(7)=94:COL(7)=0:MOJI$(7)="■表示":PUSHB(7)=0 5110 BS$(8)="CONNECT":HX(8)=63:HY(8)=96:HDX(8)=73:HDY(8)=106:COL(8)=9:MOJI$(8)="":PUSHB(8)=1 5120 BS$(9)="CONNECT":HX(9)=63:HY(9)=111:HDX(9)=73:HDY(9)=121:COL(9)=9:MOJI$(9)="":PUSHB(9)=1 5130 BS$(10)="CONNECT":HX(10)=63:HY(10)=126:HDX(10)=73:HDY(10)=136:COL(10)=9:MOJI$(10)="":PUSHB(10)=1 5140 BS$(11)="MOJI":HX(11)=76:HY(11)=96:HDX(11)=142:HDY(11)=108:COL(11)=8:MOJI$(11)="RC-TIMECORD":PUSHB(11)=0 5150 BS$(12)="MOJI":HX(12)=76:HY(12)=111:HDX(12)=160:HDY(12)=123:COL(12)=8:MOJI$(12)="時計(HH:MM:SS)":PUSHB(12)=0 5160 BS$(13)="MOJI":HX(13)=76:HY(13)=126:HDX(13)=160:HDY(13)=138:COL(13)=8:MOJI$(13)="時計( MM:SS)":PUSHB(13)=0 5170 BS$(14)="CONNECT2":HX(14)=74:HY(14)=156:HDX(14)=144:HDY(14)=173:COL(14)=9:MOJI$(14)="":PUSHB(14)=0 5180 BS$(15)="MOJI":HX(15)=79:HY(15)=159:HDX(15)=139:HDY(15)=171:COL(15)=8:MOJI$(15)="時計合わせ":PUSHB(15)=0 5190 BS$(16)="CONNECT2":HX(16)=202:HY(16)=177:HDX(16)=244:HDY(16)=193:COL(16)=9:MOJI$(16)="":PUSHB(16)=0 5200 BS$(17)="CONNECT2":HX(17)=157:HY(17)=177:HDX(17)=199:HDY(17)=193:COL(17)=9:MOJI$(17)="":PUSHB(17)=0 5210 BS$(18)="MOJI":HX(18)=165:HY(18)=179:HDX(18)=189:HDY(18)=192:COL(18)=7:MOJI$(18)="設定":PUSHB(18)=0 5220 BS$(19)="MOJI":HX(19)=211:HY(19)=179:HDX(19)=235:HDY(19)=192:COL(19)=7:MOJI$(19)="終了":PUSHB(19)=0 5230 BS$(20)="CONNECT2":HX(20)=74:HY(20)=176:HDX(20)=144:HDY(20)=193:COL(20)=9:MOJI$(20)="":PUSHB(20)=0 5240 BS$(21)="MOJI":HX(21)=79:HY(21)=179:HDX(21)=139:HDY(21)=189:COL(21)=0:MOJI$(21)="TVモニタ":PUSHB(21)=0 5250 BS$(22)="MOJI":HX(22)=165:HY(22)=82:HDX(22)=225:HDY(22)=94:COL(22)=8:MOJI$(22)="■フォント":PUSHB(22)=0 5260 BS$(23)="CONNECT":HX(23)=164:HY(23)= 98:HDX(23)=226:HDY(23)=112:COL(23)=9:MOJI$(23)="":PUSHB(23)=0 5270 BS$(24)="CONNECT":HX(24)=164:HY(24)=113:HDX(24)=226:HDY(24)=128:COL(24)=9:MOJI$(24)="":PUSHB(24)=0 5280 BS$(25)="CONNECT":HX(25)=164:HY(25)=129:HDX(25)=226:HDY(25)=143:COL(25)=9:MOJI$(25)="":PUSHB(25)=0 5290 BS$(26)="CONNECT":HX(26)=164:HY(26)=144:HDX(26)=226:HDY(26)=158:COL(26)=9:MOJI$(26)="":PUSHB(26)=0 5300 BS$(27)="CONNECT":HX(27)=164:HY(27)=159:HDX(27)=226:HDY(27)=173:COL(27)=9:MOJI$(27)="":PUSHB(27)=0 5310 BS$(28)="MOJI":HX(28)=165:HY(28)= 99:HDX(28)=225:HDY(28)=111:COL(28)=0:MOJI$(28)="システム ":PUSHB(28)=0 5320 BS$(29)="MOJI":HX(29)=165:HY(29)=114:HDX(29)=225:HDY(29)=127:COL(29)=0:MOJI$(29)="明朝体 ":PUSHB(29)=0 5330 BS$(30)="MOJI":HX(30)=165:HY(30)=130:HDX(30)=225:HDY(30)=142:COL(30)=0:MOJI$(30)="ゴシック体":PUSHB(30)=0 5340 BS$(31)="MOJI":HX(31)=165:HY(31)=145:HDX(31)=225:HDY(31)=157:COL(31)=0:MOJI$(31)="教科書体 ":PUSHB(31)=0 5350 BS$(32)="MOJI":HX(32)=165:HY(32)=160:HDX(32)=225:HDY(32)=172:COL(32)=0:MOJI$(32)="まるもじ ":PUSHB(32)=0 5360 BS$(33)="CONNECT":HX(33)=63:HY(33)=141:HDX(33)=73:HDY(33)=151:COL(33)=9:MOJI$(33)="":PUSHB(33)=1 5370 BS$(34)="MOJI":HX(34)=76:HY(34)=141:HDX(34)=160:HDY(34)=151:COL(34)=8:MOJI$(34)="時計(HH:MM )":PUSHB(34)=0 5380 GOSUB *RK:GOSUB *PROG_SET:GOSUB *FONT_SET 5390 *ボタン反応1 5400 WHILE MOUSE(2,0)=0:WEND:MX=MOUSE(0):MY=MOUSE(1):SWITCH=0:HMX=0 5410 FOR I=0 TO MAX 5420 IF LEFT$(BS$(I),7)="CONNECT" THEN 5430 IF MX>=HX(I) AND MY>=HY(I) AND MX<=HDX(I) AND MY<=HDY(I) THEN HMX=I 5440 ENDIF 5450 NEXT 5460 IF HMX<>0 GOTO *ボタン処理1 5470 GOTO *ボタン反応1 5480 *ボタン処理1 5490 GOSUB *ボタン処理 5500 '==============================ボタン分岐 5510 IF SWITCH=1 AND HMX=2 THEN MOUSE 5:GOSUB *FED_OUT:END 5520 IF SWITCH=1 AND HMX=16 THEN MOUSE 5:GOSUB *FED_OUT:END 5530 IF SWITCH=1 AND HMX=17 THEN GOTO *JUMP 5540 IF SWITCH=1 AND HMX=14 THEN GOTO *SET_TIMER 5550 IF SWITCH=1 AND HMX=8 THEN GOSUB *PROG_SET 5560 IF SWITCH=1 AND HMX=9 THEN GOSUB *PROG_SET 5570 IF SWITCH=1 AND HMX=10 THEN GOSUB *PROG_SET 5580 IF SWITCH=1 AND HMX=33 THEN GOSUB *PROG_SET 5590 IF SWITCH=1 AND HMX=23 THEN GOSUB *FONT_SET 5600 IF SWITCH=1 AND HMX=24 THEN GOSUB *FONT_SET 5610 IF SWITCH=1 AND HMX=25 THEN GOSUB *FONT_SET 5620 IF SWITCH=1 AND HMX=26 THEN GOSUB *FONT_SET 5630 IF SWITCH=1 AND HMX=27 THEN GOSUB *FONT_SET 5640 IF SWITCH=1 AND HMX=20 THEN GOTO *TV_MONITER 5650 '======================================== 5660 LINE(HX(FONT_FLAG+22),HY(FONT_FLAG+22))-(HDX(FONT_FLAG+22),HDY(FONT_FLAG+22)),PSET,%7,B 5670 GOTO *ボタン反応1 5680 ' 5690 '================================USER SUB 5700 *PROG_SET 'プログラム選択 5710 IF PROG_FLAG<>0 THEN LINE (HX(PROG_FLAG+7)+1,HY(PROG_FLAG+7)+1)-(HDX(PROG_FLAG+7)-1,HDY(PROG_FLAG+7)-1),PSET,%1,BF 5720 IF HMX=8 THEN PROG_FLAG=1 'RC-TIME 5730 IF HMX=9 THEN PROG_FLAG=2 'TIME(HH:MM:SS) 5740 IF HMX=10 THEN PROG_FLAG=3 'TIME( MM:SS) 5750 IF HMX=33 THEN PROG_FLAG=26'TIME(HH:MM ) 5760 LINE (HX(PROG_FLAG+7)+1,HY(PROG_FLAG+7)+1)-(HDX(PROG_FLAG+7)-1,HDY(PROG_FLAG+7)-1),PSET,0,BF 5770 RETURN 5780 ' 5790 *FONT_SET 'フォント選択(TIME(HH:MM)のみ) 5800 IF FONT_FLAG<>0 THEN X1=HX(FONT_FLAG+22):Y1=HY(FONT_FLAG+22):X2=HDX(FONT_FLAG+22):Y2=HDY(FONT_FLAG+22):GOSUB *CONNECT 5810 IF HMX=23 THEN FONT_FLAG=1 'システム 12ドット*2 5820 IF HMX=24 THEN FONT_FLAG=2 '明朝体 24ドット 5830 IF HMX=25 THEN FONT_FLAG=3 'ゴシック体 24ドット 5840 IF HMX=26 THEN FONT_FLAG=4 '教科書体 24ドット 5850 IF HMX=27 THEN FONT_FLAG=5 'まるもじ 24ドット 5860 LINE(HX(FONT_FLAG+22),HY(FONT_FLAG+22))-(HDX(FONT_FLAG+22),HDY(FONT_FLAG+22)),PSET,%7,B 5870 RETURN 5880 ' 5890 *TV_MONITER 'ビデオ画面モニター 5900 SCREEN@ 1:CLS 5910 LINE(0,0)-(319,239),PSET,[0,0,0,1],BF:SIMPOSE ON 5920 LINE(29,209)-(294,222),PSET,7,BF 5930 SYMBOL(30,210),"TVモニター マウスクリックで終了します",.75!,.75!,0 5940 MOUSE 0:WHILE MOUSE(2,0)=0 AND MOUSE(2,1)=0:WEND 5950 GOTO *FORMAT 5960 ' 5970 *SET_TIMER '時刻設定 5980 '======GUIデータ(時刻設定)====== 5990 MAX= 34 6000 BS$(0)="BOXFIL":HX(0)=0:HY(0)=0:HDX(0)=319:HDY(0)=239:COL(0)=9:MOJI$(0)="":PUSHB(0)=0 6010 BS$(1)="MCONNECT2":HX(1)=55:HY(1)=51:HDX(1)=249:HDY(1)=200:COL(1)=9:MOJI$(1)="":PUSHB(1)=0 6020 BS$(2)="CONNECT2":HX(2)=59:HY(2)=54:HDX(2)=76:HDY(2)=71:COL(2)=9:MOJI$(2)="":PUSHB(2)=0 6030 BS$(3)="MCONNECTR":HX(3)=79:HY(3)=55:HDX(3)=245:HDY(3)=71:COL(3)=9:MOJI$(3)="":PUSHB(3)=0 6040 BS$(4)="MOJI":HX(4)=62:HY(4)=57:HDX(4)=74:HDY(4)=69:COL(4)=7:MOJI$(4)="×":PUSHB(4)=0 6050 BS$(5)="MOJI":HX(5)=83:HY(5)=57:HDX(5)=131:HDY(5)=69:COL(5)=7:MOJI$(5)="時刻設定":PUSHB(5)=0 6060 BS$(6)="CONNECT2":HX(6)=201:HY(6)=178:HDX(6)=245:HDY(6)=196:COL(6)=9:MOJI$(6)="":PUSHB(6)=0 6070 BS$(7)="CONNECT2":HX(7)=153:HY(7)=178:HDX(7)=197:HDY(7)=196:COL(7)=9:MOJI$(7)="":PUSHB(7)=0 6080 BS$(8)="MOJI":HX(8)=163:HY(8)=181:HDX(8)=187:HDY(8)=193:COL(8)=7:MOJI$(8)="設定":PUSHB(8)=0 6090 BS$(9)="MOJI":HX(9)=211:HY(9)=181:HDX(9)=235:HDY(9)=193:COL(9)=7:MOJI$(9)="取消":PUSHB(9)=0 6100 BS$(10)="MCONNECTR":HX(10)=101:HY(10)=74:HDX(10)=146:HDY(10)=105:COL(10)=9:MOJI$(10)="":PUSHB(10)=0 6110 BS$(11)="MCONNECTR":HX(11)=101:HY(11)=108:HDX(11)=146:HDY(11)=139:COL(11)=9:MOJI$(11)="":PUSHB(11)=0 6120 BS$(12)="MCONNECTR":HX(12)=101:HY(12)=142:HDX(12)=146:HDY(12)=173:COL(12)=9:MOJI$(12)="":PUSHB(12)=0 6130 BS$(13)="CONNECT2":HX(13)=147:HY(13)=74:HDX(13)=162:HDY(13)=89:COL(13)=9:MOJI$(13)="":PUSHB(13)=0 6140 BS$(14)="CONNECT2":HX(14)=147:HY(14)=90:HDX(14)=162:HDY(14)=105:COL(14)=9:MOJI$(14)="":PUSHB(14)=0 6150 BS$(15)="CONNECT2":HX(15)=147:HY(15)=108:HDX(15)=162:HDY(15)=123:COL(15)=9:MOJI$(15)="":PUSHB(15)=0 6160 BS$(16)="CONNECT2":HX(16)=147:HY(16)=124:HDX(16)=162:HDY(16)=139:COL(16)=9:MOJI$(16)="":PUSHB(16)=0 6170 BS$(17)="CONNECT2":HX(17)=147:HY(17)=142:HDX(17)=162:HDY(17)=157:COL(17)=9:MOJI$(17)="":PUSHB(17)=0 6180 BS$(18)="CONNECT2":HX(18)=147:HY(18)=158:HDX(18)=162:HDY(18)=173:COL(18)=9:MOJI$(18)="":PUSHB(18)=0 6190 BS$(19)="MOJI":HX(19)=149:HY(19)=76:HDX(19)=161:HDY(19)=88:COL(19)=8:MOJI$(19)="▲":PUSHB(19)=0 6200 BS$(20)="MOJI":HX(20)=149:HY(20)=92:HDX(20)=161:HDY(20)=104:COL(20)=8:MOJI$(20)="▼":PUSHB(20)=0 6210 BS$(21)="MOJI":HX(21)=149:HY(21)=110:HDX(21)=161:HDY(21)=122:COL(21)=8:MOJI$(21)="▲":PUSHB(21)=0 6220 BS$(22)="MOJI":HX(22)=149:HY(22)=126:HDX(22)=161:HDY(22)=138:COL(22)=8:MOJI$(22)="▼":PUSHB(22)=0 6230 BS$(23)="MOJI":HX(23)=149:HY(23)=144:HDX(23)=161:HDY(23)=156:COL(23)=8:MOJI$(23)="▲":PUSHB(23)=0 6240 BS$(24)="MOJI":HX(24)=149:HY(24)=160:HDX(24)=161:HDY(24)=172:COL(24)=8:MOJI$(24)="▼":PUSHB(24)=0 6250 BS$(25)="MOJI":HX(25)=79:HY(25)=82:HDX(25)=91:HDY(25)=94:COL(25)=8:MOJI$(25)="時":PUSHB(25)=0 6260 BS$(26)="MOJI":HX(26)=79:HY(26)=117:HDX(26)=91:HDY(26)=129:COL(26)=8:MOJI$(26)="分":PUSHB(26)=0 6270 BS$(27)="MOJI":HX(27)=79:HY(27)=152:HDX(27)=91:HDY(27)=164:COL(27)=8:MOJI$(27)="秒":PUSHB(27)=0 6280 BS$(28)="MOJI":HX(28)=166:HY(28)=84:HDX(28)=226:HDY(28)=96:COL(28)=8:MOJI$(28)="(00~23)":PUSHB(28)=0 6290 BS$(29)="MOJI":HX(29)=166:HY(29)=117:HDX(29)=226:HDY(29)=129:COL(29)=8:MOJI$(29)="(00~59)":PUSHB(29)=0 6300 BS$(30)="MOJI":HX(30)=166:HY(30)=151:HDX(30)=226:HDY(30)=163:COL(30)=8:MOJI$(30)="(00~59)":PUSHB(30)=0 6310 BS$(31)="MOJI":HX(31)=114:HY(31)=83:HDX(31)=138:HDY(31)=95:COL(31)=0:MOJI$(31)="00":PUSHB(31)=0 6320 BS$(32)="MOJI":HX(32)=114:HY(32)=117:HDX(32)=138:HDY(32)=129:COL(32)=0:MOJI$(32)="00":PUSHB(32)=0 6330 BS$(33)="MOJI":HX(33)=114:HY(33)=151:HDX(33)=138:HDY(33)=163:COL(33)=0:MOJI$(33)="00":PUSHB(33)=0 6340 GOSUB *RK:GOSUB *NOWTIME 6350 *ボタン反応2 6360 WHILE MOUSE(2,0)=0:WEND:MX=MOUSE(0):MY=MOUSE(1):SWITCH=0:HMX=0 6370 FOR I=0 TO MAX 6380 IF LEFT$(BS$(I),7)="CONNECT" THEN 6390 IF MX>=HX(I) AND MY>=HY(I) AND MX<=HDX(I) AND MY<=HDY(I) THEN HMX=I 6400 ENDIF 6410 NEXT 6420 IF HMX<>0 GOTO *ボタン処理2 6430 GOTO *ボタン反応2 6440 *ボタン処理2 6450 GOSUB *ボタン処理 6460 '==============================ボタン分岐 6470 IF SWITCH=1 AND HMX=6 THEN GOTO *BACK_MAIN 6480 IF SWITCH=1 AND HMX=7 THEN GOTO *TIMESET 6490 IF SWITCH=1 AND HMX=2 THEN GOTO *BACK_MAIN 6500 IF SWITCH=1 AND HMX=13 THEN GOSUB *TIMEPUT 6510 IF SWITCH=1 AND HMX=14 THEN GOSUB *TIMEPUT 6520 IF SWITCH=1 AND HMX=15 THEN GOSUB *TIMEPUT 6530 IF SWITCH=1 AND HMX=16 THEN GOSUB *TIMEPUT 6540 IF SWITCH=1 AND HMX=17 THEN GOSUB *TIMEPUT 6550 IF SWITCH=1 AND HMX=18 THEN GOSUB *TIMEPUT 6560 '======================================== 6570 GOTO *ボタン反応2 6580 ' 6590 *BACK_MAIN 6600 GOTO *YOURPROGRAM 6610 ' 6620 *TIMEPUT '時間枠の上下 6630 IF HMX=13 THEN HOUR=HOUR+1:IF HOUR>=24 THEN HOUR=0 6640 IF HMX=14 THEN HOUR=HOUR-1:IF HOUR=<-1 THEN HOUR=23 6650 IF HMX=15 THEN MIN=MIN+1:IF MIN>=60 THEN MIN=0 6660 IF HMX=16 THEN MIN=MIN-1:IF MIN=<-1 THEN MIN=59 6670 IF HMX=17 THEN SEC=SEC+1:IF SEC>=60 THEN SEC=0 6680 IF HMX=18 THEN SEC=SEC-1:IF SEC=<-1 THEN SEC=59 6690 ' 6700 IF HMX=13 OR HMX=14 THEN TMP$=RIGHT$("00"+RIGHT$(STR$(HOUR),LEN(STR$(HOUR))-1),2):TMP=31 6710 IF HMX=15 OR HMX=16 THEN TMP$=RIGHT$("00"+RIGHT$(STR$(MIN),LEN(STR$(MIN))-1),2):TMP=32 6720 IF HMX=17 OR HMX=18 THEN TMP$=RIGHT$("00"+RIGHT$(STR$(SEC),LEN(STR$(SEC))-1),2):TMP=33 6730 LINE(HX(TMP),HY(TMP))-(HDX(TMP),HDY(TMP)),PSET,%1,BF 6740 SYMBOL(HX(TMP),HY(TMP)),AKCNV$(TMP$),.75!,.75!,%8 6750 RETURN 6760 ' 6770 *TIMESET 6780 HH$=RIGHT$("00"+RIGHT$(STR$(HOUR),LEN(STR$(HOUR))-1),2) 6790 MM$=RIGHT$("00"+RIGHT$(STR$(MIN),LEN(STR$(MIN))-1),2) 6800 SS$=RIGHT$("00"+RIGHT$(STR$(SEC),LEN(STR$(SEC))-1),2) 6810 TIME$=HH$+":"+MM$+":"+SS$ 6820 GOTO *BACK_MAIN 6830 ' 6840 *NOWTIME 6850 HH$=LEFT$(TIME$,2):MM$=MID$(TIME$,4,2):SS$=RIGHT$(TIME$,2) 6860 HOUR=VAL(HH$):MIN=VAL(MM$):SEC=VAL(SS$) 6870 LINE(HX(31),HY(31))-(HDX(31),HDY(31)),PSET,%1,BF 6880 SYMBOL(HX(31),HY(31)),AKCNV$(HH$),.75!,.75!,%8 6890 LINE(HX(32),HY(32))-(HDX(32),HDY(32)),PSET,%1,BF 6900 SYMBOL(HX(32),HY(32)),AKCNV$(MM$),.75!,.75!,%8 6910 LINE(HX(33),HY(33))-(HDX(33),HDY(33)),PSET,%1,BF 6920 SYMBOL(HX(33),HY(33)),AKCNV$(SS$),.75!,.75!,%8 6930 RETURN 6940 ' 6950 *JUMP:CLS '各プログラムへのジャンプ 6960 IF PROG_FLAG=1 THEN GOTO *RC_TIMECORD 6970 IF PROG_FLAG=2 THEN VT_FLAG=1:GOTO *V_TIMER 6980 IF PROG_FLAG=3 THEN VT_FLAG=2:GOTO *V_TIMER 6990 IF PROG_FLAG=26 THEN GOTO *TV_CLOCK 7000 GOTO *YOURPROGRAM 7010 ' 7020 *ZOOM '何故わざわざ画面を2倍にするのかは……聞かないで下さい(^_^;) 7030 OUT &H440,&H1B,2:OUT &H442,(YBAI-1)*16+(XBAI-1),2 7040 RETURN 7050 ' 10000 '******************************************************************** 10010 '** RC-TIMECORD表示部分 For 8DOTFONT ** 10020 '******************************************************************** 10030 *RC_TIMECORD 10040 SCREEN 1,1,0:SCREEN@ 1:CLS:LINE(0,0)-(319,239),PSET,[0,0,0,1],BF 10050 DIM DAT%(19200),PT%(3) ' 配列(PT%)は 8バイト 必要 10060 SCREEN 1,1:LINE(0,0)-(8*16-1,7),PSET,0,BF 10070 FOR I&=0 TO 15 10080 A$=MID$("TCR 0123456789:・",I&+1) 10090 CALLM 0 ,ASC(A$),&H14,VARPTR(PT%(0)) ' 配列 PT%() にパターン格納 10100 X=I&*8:Y=0 10110 PUT@(X,Y)-(X+7,Y+7),PT% ' パターン表示 10120 NEXT 10130 GET@A(0,0)-(159,119),DAT%:LINE(0,0)-(319,239),PSET,[0,0,0,1],BF 10140 PUT@A(0,0)-(159,119),DAT%,PSET,2,2 '2倍にした8×8DOT 10150 ERASE DAT%,PT%:DIM FONT%(256*16) 10160 FOR I&=0 TO 15 10170 X=I&*16:Y=0 10180 GET@A(X,Y)-(X+15,Y+15),FONT%,256*I& 10190 NEXT 10200 LINE(0,0)-(319,239),PSET,[0,0,0,1],BF 10210 ' 10220 SCREEN 1,1,2:GOSUB *準備_RC 10230 ' 10240 '=================================================================== 10250 ' メインルーチン 10260 '=================================================================== 10270 SIMPOSE ON 10280 *繰り返し_RC 10290 OLDTIME$=TIME$:FLAME=FLAME+1:WAIT 2 10300 IF FLAME=30 THEN FLAME=0 10310 ' 10320 GOSUB *時刻表示_RC 10330 ' 10340 GOTO *繰り返し_RC 10350 ' 10360 '=================================================================== 10370 ' 時刻の表示をするサブルーチン 10380 '=================================================================== 10390 *時刻表示_RC 10400 MOUSE(2) STOP:MOUSE(4) STOP 10410 OH1$=NH1$:OH2$=NH2$ 10420 OM1$=NM1$:OM2$=NM2$ 10430 OS1$=NS1$:OS2$=NS2$ 10440 OF1$=NF1$:OF2$=NF2$ 10450 ' 10460 NH1$=LEFT$(TIME$,1) :NH2$=MID$(TIME$,2,1) 10470 NM1$=MID$(TIME$,4,1):NM2$=MID$(TIME$,5,1) 10480 NS1$=MID$(TIME$,7,1):NS2$=RIGHT$(TIME$,1) 10490 TMP$=RIGHT$(STR$(FLAME),2) 10500 NF1$=LEFT$(TMP$,1):NF2$=RIGHT$(TMP$,1) 10510 ' 10520 IF OH1$<>NH1$ THEN PUT@A(6*16+8,12)-(7*16+8-1,27),FONT%,,,,,(256*(VAL(NH1$)+4)) 10530 IF OH2$<>NH2$ THEN PUT@A(7*16+8,12)-(8*16+8-1,27),FONT%,,,,,(256*(VAL(NH2$)+4)) 10540 IF OM1$<>NM1$ THEN PUT@A(9*16+8,12)-(10*16+8-1,27),FONT%,,,,,(256*(VAL(NM1$)+4)) 10550 IF OM2$<>NM2$ THEN PUT@A(10*16+8,12)-(11*16+8-1,27),FONT%,,,,,(256*(VAL(NM2$)+4)) 10560 IF OS1$<>NS1$ THEN PUT@A(12*16+8,12)-(13*16+8-1,27),FONT%,,,,,(256*(VAL(NS1$)+4)) 10570 IF OS2$<>NS2$ THEN PUT@A(13*16+8,12)-(14*16+8-1,27),FONT%,,,,,(256*(VAL(NS2$)+4)) 10580 IF OF1$<>NF1$ THEN PUT@A(15*16+8,12)-(16*16+8-1,27),FONT%,,,,,(256*(VAL(NF1$)+4)) 10590 IF OF2$<>NF2$ THEN PUT@A(16*16+8,12)-(17*16+8-1,27),FONT%,,,,,(256*(VAL(NF2$)+4)) 10600 MOUSE(2) ON:MOUSE(4) ON 10610 RETURN 10620 ' 10630 '=================================================================== 10640 ' 画面の準備をするサブルーチン 10650 '=================================================================== 10660 *準備_RC 10670 ' 10680 LINE(2*16+8,12)-(17*16-1+8,27),PSET,0,BF 10690 FLAME=0 10700 ' 10710 NH1$=LEFT$(TIME$,1) :NH2$=MID$(TIME$,2,1) 10720 NM1$=MID$(TIME$,4,1):NM2$=MID$(TIME$,5,1) 10730 NS1$=MID$(TIME$,7,1):NS2$=RIGHT$(TIME$,1) 10740 TMP$=RIGHT$(STR$(FLAME),2) 10750 NF1$=LEFT$(TMP$,1):NF2$=RIGHT$(TMP$,1) 10760 ' 10770 PUT@A(2*16+8,12)-(3*16+8-1,27),FONT%,,,,,(256*0) 10780 PUT@A(3*16+8,12)-(4*16+8-1,27),FONT%,,,,,(256*1) 10790 PUT@A(4*16+8,12)-(5*16+8-1,27),FONT%,,,,,(256*2) 10800 PUT@A(5*16+8,12)-(6*16+8-1,27),FONT%,,,,,(256*3) 10810 PUT@A(6*16+8,12)-(7*16+8-1,27),FONT%,,,,,(256*(VAL(NH1$)+4)) 10820 PUT@A(7*16+8,12)-(8*16+8-1,27),FONT%,,,,,(256*(VAL(NH2$)+4)) 10830 PUT@A(8*16+8,12)-(9*16+8-1,27),FONT%,,,,,(256*14) 10840 PUT@A(9*16+8,12)-(10*16+8-1,27),FONT%,,,,,(256*(VAL(NM1$)+4)) 10850 PUT@A(10*16+8,12)-(11*16+8-1,27),FONT%,,,,,(256*(VAL(NM2$)+4)) 10860 PUT@A(11*16+8,12)-(12*16+8-1,27),FONT%,,,,,(256*14) 10870 PUT@A(12*16+8,12)-(13*16+8-1,27),FONT%,,,,,(256*(VAL(NS1$)+4)) 10880 PUT@A(13*16+8,12)-(14*16+8-1,27),FONT%,,,,,(256*(VAL(NS2$)+4)) 10890 PUT@A(14*16+8,12)-(15*16+8-1,27),FONT%,,,,,(256*15) 10900 PUT@A(15*16+8,12)-(16*16+8-1,27),FONT%,,,,,(256*(VAL(NF1$)+4)) 10910 PUT@A(16*16+8,12)-(17*16+8-1,27),FONT%,,,,,(256*(VAL(NF2$)+4)) 10920 MOUSE 0 'マウス初期化 10930 ON MOUSE(2) GOSUB *COUNTSTOP_RC :MOUSE(2) ON '左クリック 10940 ON MOUSE(4) GOSUB *COUNTRESET_RC:MOUSE(4) ON '右クリック 10950 RETURN 10960 *MENU_RC 10970 MOUSE(2) OFF:MOUSE(4) OFF 10980 ERASE FONT%:GOTO *FORMAT 'GOTO MAINPROG 10990 ' 11000 '=================================================================== 11010 ' マウス操作(カウント)ルーチン類 11020 '=================================================================== 11030 *COUNTSTOP_RC 'カウントストップ 11040 MOUSE(2) STOP:MOUSE(4) STOP 11050 STOPTIME$=TIME$:STOPFLAME=FLAME 11060 *LOOP1_RC 11070 IF MOUSE(2,0)=0 THEN 11100 11080 IF MOUSE(2,0) AND MOUSE(2,1) THEN RETURN *MENU_RC 11090 GOTO *LOOP1_RC 11100 MOUSE(2) ON:MOUSE(4) ON:TIME$=STOPTIME$:FLAME=STOPFLAME:RETURN 11110 ' 11120 *COUNTRESET_RC 'カウントリセット 11130 MOUSE(2) STOP:MOUSE(4) STOP 11140 TIME$="00:00:00":FLAME=0:GOSUB *時刻表示_RC 11150 *LOOP2_RC 11160 IF MOUSE(2,1)=0 THEN 11190 11170 IF MOUSE(2,0) AND MOUSE(2,1) THEN RETURN *MENU_RC 11180 GOTO *LOOP2_RC 11190 MOUSE(2) ON:MOUSE(4) ON 11200 TIME$="00:00:00":FLAME=0:RETURN' 11210 ' 15000 '******************************************************************** 15010 '** テレビの時計の表示部分 ** 15020 '******************************************************************** 15030 *TV_CLOCK 15040 SCREEN 1,1,0:SCREEN@ 1:CLS 15050 LINE (0,0)-(319,239),PSET,[0,0,0,1],BF 15060 *FONT_CHECK 15070 IF FONT_FLAG=1 THEN DEF FONT "システム 12ドット" 15080 IF FONT_FLAG=2 THEN DEF FONT "明朝体 24ドット" 15090 IF FONT_FLAG=3 THEN DEF FONT "ゴシック体 24ドット" 15100 IF FONT_FLAG=4 THEN DEF FONT "教科書体 24ドット" 15110 IF FONT_FLAG=5 THEN DEF FONT "まるもじ 24ドット" 15120 IF FONT_FLAG>=6 THEN DEF FONT "システム 12ドット" 15130 SYMBOL(0,0),"0123456789:",1.5!,1.5!,7,,,1 15140 SYMBOL(0,1),"0123456789:",1.5!,1.5!,7,,,1 15150 DIM FONT%(312*12) '(24*13)*12 15160 FOR I=0 TO 11 15170 GET@A(13*I,0)-(13*(I+1)-1,23),FONT%,312*I 15180 NEXT 15190 CLS:LINE (0,0)-(319,239),PSET,[0,0,0,1],BF 15200 ' 15210 SCREEN 1,1,2:GOSUB *準備_TVC 15220 ' 15230 '=================================================================== 15240 ' メインルーチン 15250 '=================================================================== 15260 SIMPOSE ON 15270 *繰り返し_TVC 15280 OLDTIME$=TIME$ 15290 WHILE OLDTIME$=TIME$:WEND 15300 ' 15310 GOSUB *時刻表示_TVC 15320 ' 15330 GOTO *繰り返し_TVC 15340 ' 15350 '=================================================================== 15360 ' 時刻の表示をするサブルーチン 15370 '=================================================================== 15380 *時刻表示_TVC 15390 OH1$=NH1$:OH2$=NH2$ 15400 OM1$=NM1$:OM2$=NM2$ 15410 TMP$=LEFT$(TIME$,2) :IF VAL(TMP$)>=13 THEN TMP$=STR$(VAL(TMP$)-12) 15420 TMP$=RIGHT$("00"+RIGHT$(TMP$,LEN(TMP$)-1),2) 15430 NH1$=LEFT$(TMP$,1) :NH2$=RIGHT$(TMP$,1) 15440 NM1$=MID$(TIME$,4,1):NM2$=MID$(TIME$,5,1) 15450 ' 15460 IF OH1$<>NH1$ THEN IF VAL(NH1$)<>0 THEN PUT@A(20+(13*0),20)-(20+(13*1-1),43),FONT%,,,,,(312*(VAL(NH1$))) ELSE PUT@A(20+(13*0),20)-(20+(13*1-1),43),FONT%,,,,,(312*11) 15470 IF OH2$<>NH2$ THEN PUT@A(25+(13*1),20)-(25+(13*2-1),43),FONT%,,,,,(312*(VAL(NH2$))) 15480 IF OM1$<>NM1$ THEN PUT@A(35+(13*3),20)-(35+(13*4-1),43),FONT%,,,,,(312*(VAL(NM1$))) 15490 IF OM2$<>NM2$ THEN PUT@A(40+(13*4),20)-(40+(13*5-1),43),FONT%,,,,,(312*(VAL(NM2$))) 15500 RETURN 15510 ' 15520 '=================================================================== 15530 ' 画面の準備をするサブルーチン 15540 '=================================================================== 15550 *準備_TVC 15560 TMP$=LEFT$(TIME$,2) :IF VAL(TMP$)>=13 THEN TMP$=STR$(VAL(TMP$)-12) 15570 TMP$=RIGHT$("00"+RIGHT$(TMP$,LEN(TMP$)-1),2) 15580 NH1$=LEFT$(TMP$,1) :NH2$=RIGHT$(TMP$,1) 15590 NM1$=MID$(TIME$,4,1):NM2$=MID$(TIME$,5,1) 15600 ' 15610 IF VAL(NH1$)<>0 THEN PUT@A(20+(13*0),20)-(20+(13*1-1),43),FONT%,,,,,(312*(VAL(NH1$))) ELSE PUT@A(20+(13*0),20)-(20+(13*1-1),43),FONT%,,,,,(312*11) 15620 PUT@A(25+(13*1),20)-(25+(13*2-1),43),FONT%,,,,,(312*(VAL(NH2$))) 15630 PUT@A(30+(13*2),20)-(30+(13*3-1),43),FONT%,,,,,(312*10) 15640 PUT@A(35+(13*3),20)-(35+(13*4-1),43),FONT%,,,,,(312*(VAL(NM1$))) 15650 PUT@A(40+(13*4),20)-(40+(13*5-1),43),FONT%,,,,,(312*(VAL(NM2$))) 15660 MOUSE 0:ON MOUSE(4) GOSUB *MENU_TVC:MOUSE(4) ON 15670 RETURN 15680 *MENU_TVC 15690 MOUSE(4) OFF:ERASE FONT%:GOTO *FORMAT 15700 ' 15710 ' 20000 '******************************************************************** 20010 '**テレビ局内時計の部分1(HH:MM:SS)&テレビ局内時計の部分2(MM:SS) ** 20020 '** ↑はV1.3から追加しました ** 20030 '******************************************************************** 20040 *V_TIMER 20050 SCREEN 1,0,0:SCREEN@ 1:CLS:LINE (0,0)-(319,239),PSET,[0,0,0,1],BF 20060 DIM FONT%((15*27)*10+(6*21)) 20070 ' ↑0-9FONT ↑":"FONT 20080 ' 405Words 126Words 20090 '------------------------FONT MAKE--------------------------- 20100 '1 20110 LINE (13*3,13*3)-(14*3-1,22*3-1),PSET,7,BF 20120 GET@A(9*3,13*3)-(14*3-1,22*3-1),FONT%,(405*1) 20130 '8 20140 FOR I=0 TO 2 20150 LINE(51*3+I,13*3+I)-((56*3-1)-I,(22*3-1)-I),PSET,7,B '□ 20160 NEXT 20170 LINE (52*3,17*3)-(55*3-1,18*3-1),PSET,7,BF'- 20180 GET@A(51*3,13*3)-(56*3-1,22*3-1),FONT%,(405*8) 20190 '0 20200 PUT@A(3*3,13*3)-(8*3-1,22*3-1),FONT%,,,,,(405*8) 20210 LINE (4*3,17*3)-(7*3-1,18*3-1),PSET,[0,0,0,1],BF '-を消す 20220 GET@A(3*3,13*3)-(8*3-1,22*3-1),FONT% 20230 '9 20240 PUT@A(57*3,13*3)-(62*3-1,22*3-1),FONT%,,,,,(405*8) 20250 LINE (57*3,18*3)-(61*3-1,22*3-1),PSET,[0,0,0,1],BF'└を消す 20260 GET@A(57*3,13*3)-(62*3-1,22*3-1),FONT%,(405*9) 20270 '6 20280 PUT@A(39*3,13*3)-(44*3-1,22*3-1),FONT%,,,,,(405*8) 20290 LINE (40*3,13*3)-(44*3-1,17*3-1),PSET,[0,0,0,1],BF'|を消す 20300 GET@A(39*3,13*3)-(44*3-1,22*3-1),FONT%,(405*6) 20310 '7 20320 PUT@A(45*3,13*3)-(50*3-1,22*3-1),FONT% 20330 LINE (45*3,14*3)-(49*3-1,22*3-1),PSET,[0,0,0,1],BF'└を消す 20340 GET@A(45*3,13*3)-(50*3-1,22*3-1),FONT%,(405*7) 20350 '5 20360 PUT@A(33*3,13*3)-(38*3-1,22*3-1),FONT%,,,,,(405*6) 20370 LINE (33*3,18*3)-(34*3-1,21*3-1),PSET,[0,0,0,1],BF'|を消す 20380 LINE (33*3,13*3)-(38*3-1,14*3-1),PSET,7,BF'-を追加 20390 GET@A(33*3,13*3)-(38*3-1,22*3-1),FONT%,(405*5) 20400 '4 20410 PUT@A(27*3,13*3)-(32*3-1,22*3-1),FONT%,,,,,(405*9) 20420 LINE (28*3,13*3)-(31*3-1,14*3-1),PSET,[0,0,0,1],BF'-を消す 20430 GET@A(27*3,13*3)-(32*3-1,22*3-1),FONT%,(405*4) 20440 '3 20450 PUT@A(21*3,13*3)-(26*3-1,22*3-1),FONT%,,,,,(405*8) 20460 LINE (21*3,14*3)-(22*3-1,17*3-1),PSET,[0,0,0,1],BF'|を消す 20470 LINE (21*3,18*3)-(22*3-1,21*3-1),PSET,[0,0,0,1],BF'|を消す 20480 GET@A(21*3,13*3)-(26*3-1,22*3-1),FONT%,(405*3) 20490 '2 20500 PUT@A(15*3,13*3)-(20*3-1,22*3-1),FONT%,,,,,(405*3) 20510 LINE (15*3,18*3)-(16*3-1,21*3-1),PSET,7,BF'|を描く 20520 LINE (19*3,18*3)-(20*3-1,21*3-1),PSET,[0,0,0,1],BF'|を消す 20530 GET@A(15*3,13*3)-(20*3-1,22*3-1),FONT%,(405*2) 20540 ': 20550 LINE (64*3,14*3)-(66*3-1,16*3-1),PSET,7,BF 20560 LINE (64*3,19*3)-(66*3-1,21*3-1),PSET,7,BF 20570 GET@A(64*3,14*3)-(66*3-1,21*3-1),FONT%,(405*10) 20580 '----------End Of Data Make 20590 LINE (0,13*3)-(319,22*3-1),PSET,[0,0,0,1],BF:SCREEN 1,0,1 20600 'プログラム分岐 20610 IF VT_FLAG=1 THEN *VT_MAIN 20620 IF VT_FLAG=2 THEN *VT_MAIN2 20630 ' 20640 '=================================================================== 20650 ' メインルーチン(VT-1) 20660 '=================================================================== 20670 *VT_MAIN 20680 GOSUB *準備_VT 20690 ' 20700 SIMPOSE ON 20710 *繰り返し_VT 20720 OLDTIME$=TIME$ 20730 WHILE OLDTIME$=TIME$:WEND 20740 ' 20750 GOSUB *時刻表示_VT 20760 ' 20770 GOTO *繰り返し_VT 20780 ' 20790 '=================================================================== 20800 ' 時刻の表示をするサブルーチン(VT-1) 20810 '=================================================================== 20820 *時刻表示_VT 20830 OH1$=NH1$:OH2$=NH2$ 20840 OM1$=NM1$:OM2$=NM2$ 20850 OS1$=NS1$:OS2$=NS2$ 20860 NH1$=LEFT$(TIME$,1) :NH2$=MID$(TIME$,2,1) 20870 NM1$=MID$(TIME$,4,1):NM2$=MID$(TIME$,5,1) 20880 NS1$=MID$(TIME$,7,1):NS2$=RIGHT$(TIME$,1) 20890 ' 20900 IF OH1$<>NH1$ THEN PUT@A(6*3,4*3)-(11*3-1,13*3-1),FONT%,,,,,(405*(VAL(NH1$))) 20910 IF OH2$<>NH2$ THEN PUT@A(12*3,4*3)-(17*3-1,13*3-1),FONT%,,,,,(405*(VAL(NH2$))) 20920 IF OM1$<>NM1$ THEN PUT@A(23*3,4*3)-(28*3-1,13*3-1),FONT%,,,,,(405*(VAL(NM1$))) 20930 IF OM2$<>NM2$ THEN PUT@A(29*3,4*3)-(34*3-1,13*3-1),FONT%,,,,,(405*(VAL(NM2$))) 20940 IF OS1$<>NS1$ THEN PUT@A(40*3,4*3)-(45*3-1,13*3-1),FONT%,,,,,(405*(VAL(NS1$))) 20950 IF OS2$<>NS2$ THEN PUT@A(46*3,4*3)-(51*3-1,13*3-1),FONT%,,,,,(405*(VAL(NS2$))) 20960 RETURN 20970 ' 20980 '=================================================================== 20990 ' 画面の準備をするサブルーチン(VT-1) 21000 '=================================================================== 21010 *準備_VT 21020 NH1$=LEFT$(TIME$,1) :NH2$=MID$(TIME$,2,1) 21030 NM1$=MID$(TIME$,4,1):NM2$=MID$(TIME$,5,1) 21040 NS1$=MID$(TIME$,7,1):NS2$=RIGHT$(TIME$,1) 21050 ' 21060 PUT@A(6*3,4*3)-(11*3-1,13*3-1),FONT%,,,,,(405*(VAL(NH1$))) 21070 PUT@A(12*3,4*3)-(17*3-1,13*3-1),FONT%,,,,,(405*(VAL(NH2$))) 21080 PUT@A(19*3,5*3)-(21*3-1,12*3-1),FONT%,,,,,(405*10) 21090 PUT@A(23*3,4*3)-(28*3-1,13*3-1),FONT%,,,,,(405*(VAL(NM1$))) 21100 PUT@A(29*3,4*3)-(34*3-1,13*3-1),FONT%,,,,,(405*(VAL(NM2$))) 21110 PUT@A(36*3,5*3)-(38*3-1,12*3-1),FONT%,,,,,(405*10) 21120 PUT@A(40*3,4*3)-(45*3-1,13*3-1),FONT%,,,,,(405*(VAL(NS1$))) 21130 PUT@A(46*3,4*3)-(51*3-1,13*3-1),FONT%,,,,,(405*(VAL(NS2$))) 21140 MOUSE 0:ON MOUSE(4) GOSUB *MENU_VT:MOUSE(4) ON 21150 RETURN 21160 *MENU_VT 21170 MOUSE(4) OFF:ERASE FONT%:GOTO *FORMAT 21180 '=================================================================== 21190 ' メインルーチン(VT-2) 21200 '=================================================================== 21210 *VT_MAIN2 21220 GOSUB *準備_VT2 21230 ' 21240 SIMPOSE ON 21250 *繰り返し_VT2 21260 OLDTIME$=TIME$ 21270 WHILE OLDTIME$=TIME$:WEND 21280 ' 21290 GOSUB *時刻表示_VT2 21300 ' 21310 GOTO *繰り返し_VT2 21320 ' 21330 '=================================================================== 21340 ' 時刻の表示をするサブルーチン(VT-2) 21350 '=================================================================== 21360 *時刻表示_VT2 21370 OM1$=NM1$:OM2$=NM2$ 21380 OS1$=NS1$:OS2$=NS2$ 21390 NM1$=MID$(TIME$,4,1):NM2$=MID$(TIME$,5,1) 21400 NS1$=MID$(TIME$,7,1):NS2$=RIGHT$(TIME$,1) 21410 ' 21420 IF OM1$<>NM1$ THEN PUT@A(6*3,4*3)-(11*3-1,13*3-1),FONT%,,,,,(405*(VAL(NM1$))) 21430 IF OM2$<>NM2$ THEN PUT@A(12*3,4*3)-(17*3-1,13*3-1),FONT%,,,,,(405*(VAL(NM2$))) 21440 IF OS1$<>NS1$ THEN PUT@A(23*3,4*3)-(28*3-1,13*3-1),FONT%,,,,,(405*(VAL(NS1$))) 21450 IF OS2$<>NS2$ THEN PUT@A(29*3,4*3)-(34*3-1,13*3-1),FONT%,,,,,(405*(VAL(NS2$))) 21460 RETURN 21470 ' 21480 '=================================================================== 21490 ' 画面の準備をするサブルーチン(VT-2) 21500 '=================================================================== 21510 *準備_VT2 21520 NM1$=MID$(TIME$,4,1):NM2$=MID$(TIME$,5,1) 21530 NS1$=MID$(TIME$,7,1):NS2$=RIGHT$(TIME$,1) 21540 ' 21550 PUT@A(6*3,4*3)-(11*3-1,13*3-1),FONT%,,,,,(405*(VAL(NM1$))) 21560 PUT@A(12*3,4*3)-(17*3-1,13*3-1),FONT%,,,,,(405*(VAL(NM2$))) 21570 PUT@A(19*3,5*3)-(21*3-1,12*3-1),FONT%,,,,,(405*10) 21580 PUT@A(23*3,4*3)-(28*3-1,13*3-1),FONT%,,,,,(405*(VAL(NS1$))) 21590 PUT@A(29*3,4*3)-(34*3-1,13*3-1),FONT%,,,,,(405*(VAL(NS2$))) 21600 MOUSE 0:ON MOUSE(4) GOSUB *MENU_VT2:MOUSE(4) ON 21610 RETURN 21620 *MENU_VT2 21630 MOUSE(4) OFF:ERASE FONT%:GOTO *FORMAT